Schema Changes from V9.0 through V9.16

The table below includes elements added in schema version 9.x.

Schema version 9.0 was released at the same time as version 8.27. Changes made in version 8.28 were also made in version 9.1. Also, several feature developed in the V10.x, 11.x, and 12.x streams were back ported to 9.x versions. Version 9.5 was never made generally available.

TABLE 1-7 New Elements in V9.0 to V9.16

New Element

Parent of

Child of

Comments

payFacCredit

fundingSubmerchantId

fundsTransferId

amount

batchRequest

The parent element for the transaction type that a Payment Facilitator uses to distribute funds to themselves (i.e., from the PayFac Settlement Account to the PayFac Operating Account).

payFacDebit

fundingSubmerchantId

fundsTransferId

amount

batchRequest

The parent element for the transaction type that a Payment Facilitator uses to move funds from the PayFac Operating Account back to the PayFac Settlement Account.

submerchantCredit

fundingSubmerchantId

submerchantName

fundsTransferId

amount

accountInfo

batchRequest

The parent element for the transaction type that a Payment Facilitator uses to move funds from the PayFac Settlement Account to the Sub-merchant Account.

submerchantDebit

fundingSubmerchantId

submerchantName

fundsTransferId

amount

accountInfo

batchRequest

The parent element for the transaction type that a Payment Facilitator uses to move funds from the

Sub-merchant Account to the PayFac Settlement Account.

reserveCredit

fundingSubmerchantId

fundsTransferId

amount

batchRequest

The parent element for the transaction type that a Payment Facilitator uses to move funds from the PayFac Settlement Account to the PayFac Reserve Account.

reserveDebit

fundingSubmerchantId

fundsTransferId

amount

batchRequest

The parent element for the transaction type that a Payment Facilitator uses to move funds from the PayFac Reserve Account to the PayFac Settlement Account.

fundingSubmerchantId

 

payFacCredit

payFacDebit

submerchantCredit

submerchantDebit

reserveCredit

reserveDebit

This specifies the identifier of the sub-merchant whose funds are moved by the instruction.

fundsTransferId

 

payFacCredit

payFacDebit

submerchantCredit

submerchantDebit

reserveCredit

reserveDebit

This specifies the Payment Facilitator assigned identifier for the transaction. You must use unique values for each transaction across you entire organization.

submerchantName

 

submerchantCredit

submerchantDebit

This specifies the name of the Sub-merchant.

payFacCreditResponse

litleTxnId

fundsTransferId

response

responseTime

message

batchResponse

The parent element for information returned to you in response to a payFacCredit transaction.

payFacDebitResponse

litleTxnId

fundsTransferId

response

responseTime

message

batchResponse

The parent element for information returned to you in response to a payFacDebit transaction.

submerchantCreditResponse

litleTxnId

fundsTransferId

response

responseTime

message

batchResponse

The parent element for information returned to you in response to a submerchantCredit transaction.

submerchantDebitResponse

litleTxnId

fundsTransferId

response

responseTime

message

batchResponse

The parent element for information returned to you in response to a submerchantDebit transaction.

reserveCreditResponse

litleTxnId

fundsTransferId

response

responseTime

message

batchResponse

The parent element for information returned to you in response to a reserveCredit transaction.

reserveDebitResponse

litleTxnId

fundsTransferId

response

responseTime

message

batchResponse

The parent element for information returned to you in response to a reserveDebit transaction.

echeckPreNoteCredit

orderId

orderSource

billToAddress

echeck

merchantData

batchRequest

Use this transaction type to preform an eCheck Prenotification, when the subsequent eCheck transaction will be an eCheck Credit transaction.

echeckPreNoteSale

orderId

orderSource

billToAddress

echeck

merchantData

batchRequest

Use this transaction type to preform an eCheck Prenotification, when the subsequent eCheck transaction will be an eCheck Sale transaction.

echeckPreNoteCreditResponse

litleTxnId

orderId

response

responseTime

message

batchResponse

This is the parent of the response message to an echeckPreNoteCredit transaction.

echeckPreNoteSaleResponse

litleTxnId

orderId

response

responseTime

message

batchResponse

This is the parent of the response message to an echeckPreNoteSale transaction.

physicalCheckCredit

fundingSubmerchantId

fundsTransferId

amount

batchRequest

The parent element for the transaction type that a Payment Facilitator uses to move funds from the PayFac Settlement Account to a third party that issues physical checks on behalf of the Payment Facilitator.

physicalCheckCreditResponse

litleTxnId

fundsTransferId

response

responseTime

message

batchResponse

The parent element for information returned to you in response to a physicalCheckCredit transaction.

physicalCheckDebit

fundingSubmerchantId

fundsTransferId

amount

batchRequest

The parent element for the transaction type that a Payment Facilitator uses to move funds from a third party who issues physical checks on the Payment Facilitator’s behalf to the PayFac Settlement Account.

physicalCheckDebitResponse

litleTxnId

fundsTransferId

response

responseTime

message

batchResponse

The parent element for information returned to you in response to a physicalCheckDebit transaction.

vendorCredit

accountInfo

fundingSubmerchantId

fundsTransferId

amount

vendorName

batchRequest

The parent element for the transaction type that a Payment Facilitator uses to move funds from the PayFac Settlement Account to a Vendor account.

vendorCreditResponse

litleTxnId

fundsTransferId

response

responseTime

message

batchResponse

The parent element for information returned to you in response to a vendorCredit transaction.

vendorDebit

accountInfo

fundingSubmerchantId

fundsTransferId

amount

vendorName

batchRequest

The parent element for the transaction type that a Payment Facilitator uses to move funds from a Vendor account to the PayFac Settlement Account.

vendorDebitResponse

litleTxnId

fundsTransferId

response

responseTime

message

batchResponse

The parent element for information returned to you in response to a vendorDebit transaction.

vendorName

 

vendorCredit vendorDebit

Specifies the name of the vendor involved in the funding instructions

applepay

 

authorization

sale

registerTokenRequest

Used to designate Apple Pay as the method of payment.

applepayResponse

applicationPrimary

AccountNumber

applicationExpiraionDate

currencyCode

transactionAmount

cardholderName

deviceManufacturer

Identifier

paymentDataType

onlinePaymentCryptogram

eciIndicator

authorizationResponse

saleResponse

registerTokenRespo nse

Includes information about the Apple Pay transaction.

applicationPrimary AccountNumber

 

applepayResponse

Defines the primary account number associated with the application.

applicationExpirationDate

 

applepayResponse

Defines expiration date of the application primary account number.

currencyCode

 

applepayResponse

The 3-character code for the currency used in the transaction.

transactionAmount

 

applepayResponse

The amount of the transaction.

cardholderName

 

applepayResponse

The name of the cardholder.

deviceManufacturerIdentifier

 

applepayResponse

Defines the manufacturer of the device originating the transaction.

paymentDataType

 

applepayResponse

Specifies the data type of the payment data associated with an Apple Pay transaction.

onlinePaymentCryptogram

 

applepayResponse

Specifies the BASE64 Encoded signature cryptogram associated with the Apple Pay transaction.

eciIndicator

 

applepayResponse

Specifies electronic commerce indicator associated with an Apple Pay/Google Pay transaction.

secondaryAmount

 

authorization

capture

credit

captureGivenAuth

echeckCredit

echeckSale

forceCapture

sale

Defines the principal portion of the total amount when a convenience fee applied to the transaction by the merchant. for example, if the total charge is $105, with the principal amount being $100 and the convenience fee being $5, you must use $100 as the value for the secondaryAmount element. Supply the value in cents without a decimal point. For example, a value of 400 signifies $4.00.

customAttribute1

customAttribute2

customAttribute3

customAttribute4

customAttribute5

 

advancedFraudChecks

The customAttribute1 through customAttribute5 elements are an optional children of the advancedFraudChecks element. These elements allow users of Advanced Fraud Tools with self-serve rules to submit additional custom data to ThreatMetrix for inclusion in the fraud evaluation process. For example, if you assigned a certain attribute to your customers for segmentation purposes, you might wish to submit the assigned value and also establish a ThreatMetrix rule so the value was included in the evaluation.

ccdPaymentInformation

 

accountInfoecheck

This element is intended for use by Payment Facilitators using Instruction Based Dynamic Payout to submit a description of the transaction. The description will appear in the extended detail section of the receiver’s bank statement, if that section is supported by the receiver’s bank.

cardSuffix

 

authorizationResponse

saleResponse

It provides the last four digits of the actual PAN for Apple Pay and Android Pay transactions, when the underlying card is either Visa or MasterCard.

processingType

 

authorization

captureGivenAuth

forceCapture

sale

You use this element to define a Visa transaction is intended to fund a host-based prepaid product, a brokerage account, or an escrow account.

Other enum values used for card on file transactions.

adroidpayResponse

cryptogram

expMonth

expYear

authorizationResponse

registerTokenResponse

saleResponse

The androidpayResponse element is an optional child of several transaction types and is returned in response messages, when the orderSource in the request is androidpay.

cryptogram

 

adroidpayResponse

The cryptogram element is an optional child of the androidpayResponse element and provides the BASE64 Encoded signature cryptogram associated with the Android Pay transaction.

expMonth

 

androidpayResponse

The expMonth element is an optional child of the androidpayResponse element, which specifies the month of expiration of the network token (format: mm).

expYear

 

androidpayResponse

The expYear element is an optional child of the androidpayResponse element, which specifies the year of expiration of the network token (format: yyyy).

pin

 

activateReversal

capture

card

credit

deactivateReversal

depositReversal

loadReversal

refundReversal

unloadReversal

virtualGiftCardResponse

The pin element is an optional child of the several transaction types, as well as the card element. It only applies to transactions involving closed-loop Gift Cards and defines the pin number associated with the Gift Card.

eciIndicator

 

androidpayResponse

applepayResponse

This element was added to the androidpayResponse element. It was already a child of applepayResponse

androidpayResponse

cryptogram

expMonth

expYear

eciIndicator

 

Added eciIndicator.

sepaDirectDebit

iban

mandateProvider

sequenceType

mandateReference

mandateUrl

mandateSignatureDate

preferredLanguage

sale (Online only)

This new method of payment allows transactions using the Single Euro Payments Area Direct Debit network.

iban

 

sepaDirectDebit

The International Bank Account Number of the consumer.

mandateProvider

 

sepaDirectDebit

Defines weather the merchant or Worldpay supplies the mandate.

sequenceType

 

sepaDirectDebit

This element defines the purchase in terms of a one-time buy or a member of a recurring stream of debits.

Attributes are: OneTime, FirstRecurring, SubsequentRecurring, and FinalRecurring.

mandateReference

 

sepaDirectDebit

sepaDirectDebitResponse

You use this element for recurring payments (after the initial transaction) to provide the reference number that links subsequent payments in a recurring stream to the mandate agreed to at the time of the initial payment. Worldpay returns this value in the sepaDirectDebitResponse associated with the initial payment.

mandateUrl

 

sepaDirectDebit

This element defines the URL of the mandate to which the consumer agreed, allowing the merchant to debit their account. Although optional, you should always provide this information when the value for the mandateProvider element is Merchant.

mandateSignatureDate

 

sepaDirectDebit

This element defines the date the consumer agreed to the mandate allowing the merchant to debit their account. Although optional, you should always provide this information when the value for the mandateProvider element is Merchant.

preferredLanguage

 

sepaDirectDebit

ideal

giropay

sofort

This defines the language in which the merchant prefers the mandate to appear.

While the merchant could be able to select any language, the mandate may not be available in the selected language. If the selected language is not available, the mandate appears in English. If you do not include this element, the preferred language defaults to the language indicated by the country of the IBAN, unless it is not available, in which case the language defaults to English.

sepaDirectDebitResponse

mandateReference

rediredtUrl

redirectToken

saleResponse

This element, returned for sepaDirectDebit transactions, contains child elements you should save for future reference.

rediredtUrl

 

sepaDirectDebitResponse

idealResponse

giropayResponse

sofortResponse

This element defines the URL that hosts the mandate, when Worldpay supplies the mandate. If you supply the mandate (<mandateProvider>Mer chant</mandateProvide r>), this element will not appear in the response.

redirectToken

 

sepaDirectDebitResponse

idealResponse

giropayResponse

sofortResponse

This element defines a value you can use to verify the approval of the Mandate by the consumer.

ideal

preferredLanguage

sale

This new method of payment allows transactions using the iDEAL Real-time Bank Transfers.

idealResponse

paymentPurpose

rediredtUrl

redirectToken

saleResponse

This element, returned for ideal transactions, contains child elements you should save for future reference.

paymentPurpose

 

idealResponse

giropayResponse

sofortResponse

Specifies information (equivalent of Bill Descriptor for a credit card transaction) that appears on the consumer bank statement along with a reference string representing the transaction.

giropay

preferredLanguage

sale

This new method of payment allows transactions using the Giropay Real-time Bank Transfers.

giropayResponse

paymentPurpose

rediredtUrl

redirectToken

saleResponse

This element, returned for giropay transactions, contains child elements you should save for future reference.

sofort

preferredLanguage

sale

This new method of payment allows transactions using the Sofort Real-time Bank Transfers

sofortResponse

paymentPurpose

rediredtUrl

redirectToken

saleResponse

This element, returned for sofort transactions, contains child elements you should save for future reference.

foreignRetailerIndicator

 

capture

captureGivenAuth

forceCapture

sale

Must be present when the marketplace and retailer are not in the same region (country). A value of 'F' indicates that the retailer is located in a different country.

authIndicator

 

authorization

Required if you submit an Incremental Authorization, used by certain Travel and Entertainment (T&E) merchants. when final purchase amounts are unknown.

Other schema changes:

    • New enumeration for <orderSource>, applepay. Use this value for Apple Pay transactions.

    • Change in maxLength of the authenticationValue element - from 32 to 56 characters.

    • New enumeration for <orderSource>, androidpay. Use this value for Android Pay transactions.

    • New enumeration for <walletSourceType>, VisaCheckout. Use this value for transactions involving the Visa Checkout service.

    • The minLength for routingNum changed from 9 to 8 characters to accommodate some Canadian routing numbers.

    • The version element, a child of applepay changed from 20 characters to 10 characters.

    • New enumerations added to the processingType element to support recurring and installment card on file transactions. The new enumerations are: initialRecurring, and initialInstallment.

    • New enumerations added to the processingType element to support card on file transactions. The new enumerations are: initialCOF, merchantInitiatedCOF, and cardholderInitiatedCOF.